package com.shujia.four;

import org.junit.Test;

import java.util.Scanner;

public class IfDemo3 {

    /*
    我家的狗5岁了，5岁的狗相当于人类多大呢？其实，
    狗的前两年每一年相当于人类的10.5岁，之后每增加一年就增加四岁。那么5岁的狗相当于人类多少年龄呢？
编写一个程序，获取用户输入的狗的年龄，通过程序显示其相当于人类的年龄。如果用户输入负数，请显示一个提示信息。
     */
    @Test
    public void test4() {
        Scanner sc = new Scanner(System.in);
        int age = sc.nextInt();
        int num = 2; // 使用变量让程序更加的灵活
        if (age <= num) {
            System.out.println(age * 10.5);
        } else {
            System.out.println((10.5 * num) + (age - num) * 4);
        }
    }

    /*
    编写程序，声明2个double型变量并赋值。判断第一个数大于10.0，
    且第2个数小于20.0，打印两数之和。否则，打印两数的乘积
     */
    @Test
    public void test3() {
        double d1 = 1.1;
        double d2 = 2.2;
        // 浮点型在做计算的时候, 可能会有精度的问题
        // BigDecimal 可以解决
        if (d1 > 10 && d2 < 20) {
            System.out.println(d1 + d2);
        } else {
            System.out.println(d1 * d2);
        }
    }

    // 键盘输入一个月份值，然后输出对应的季节。
    // 3～5月为春季 spring，6～8月算为夏季 summer，9～11月算为秋季 autumn，12～2月算为冬季 winter
    @Test
    public void test2() {
        Scanner sc = new Scanner(System.in);
        int season = sc.nextInt();
        if (season < 1 || season > 12) {
            System.out.println("输入的季节不合法!");
            // return, 终止当前方法, 后面的代码都不会在执行了
            return;
        }
        if (season >= 3 && season <= 5) {
            System.out.println("spring");
        } else if (season >= 6 && season <= 8) {
            System.out.println("summer");
        } else if (season >= 9 && season <= 11) {
            System.out.println("autumn");
        } else {
            System.out.println("winter");
        }


    }

    @Test
    public void test1() {
        //1.else if 可以有0到多个
        //2.else语句有0到一个
        /*
        老师在批改试卷，成绩在90分以上的为优秀，成绩在80-90分之间为良好，
        成绩在60-80分之间的为合格，60分以下的为差。
         */
        Scanner sc = new Scanner(System.in);
        int score = sc.nextInt();

        // 数据校验
//        if (score < 0 || score > 100) {
//            System.out.println("成绩参数不合法!");
//        } else {
//            if (score > 90) {
//                System.out.println("优秀");
//            } else if (80 < score && score <= 90) {
//                System.out.println("良好");
//            } else if (60 <= score && score <= 80) {
//                System.out.println("合格");
//            } else {
//                // 如果输入的成绩是 0 - 100, else是差没有问题
//                System.out.println("差");
//            }
//        }

        // 参数校验 结合 return
        if (score < 0 || score > 100) {
            System.out.println("成绩参数不合法!");
            return;
        }

        if (score >= 0 && score <= 100) { // 参数合法
            if (score > 90) {
                System.out.println("优秀");
            } else if (80 < score && score <= 90) {
                System.out.println("良好");
            } else if (60 <= score && score <= 80) {
                System.out.println("合格");
            } else {
                // 如果输入的成绩是 0 - 100, else是差没有问题
                System.out.println("差");
            }
        } else {
            System.out.println("成绩参数不合法!");
        }


    }
}
